package com.um.jdy.rpc.notify;

import com.um.jdy.rpc.entity.EVDeviceInfo;
import com.um.jdy.rpc.entity.EVPort;
import com.um.jdy.rpc.ev.confirmation.RemoteStartTransactionConfirmation;
import com.um.jdy.rpc.ev.confirmation.RemoteUpgradeConfirmation;

import java.util.List;
/**
 * 汽车充电桩
 * 设备调用平台RPC
 *
 * @author cs
 * 日期 2023/5/18
 * 版权所有 广州优匠科技有限公司
 */
public interface RpcEVDeviceNotifyService {

    /**
     * 设备登录上报
     * @param seq 序列号
     * @param imei IMEI码
     * @param ports 端口列表
     * @param info 设备信息
     */
    boolean reqDeviceLogin(String seq, String imei, List<EVPort> ports, EVDeviceInfo info);

    /**
     * 设备离线上报
     * @param seq 序列号
     * @param imei IMEI码
     */
    void reqDeviceOffline(String seq, String imei);

    /**
     * 设备心跳上报
     * @param seq 序列号
     * @param imei IMEI码
     */
    void reqDeviceHeart(String seq,String imei,String protocol);

    /**
     * 桩回复升级状态
     * @param seq
     * @param imei IMEI码
     * @param confirmation 回复数据
     */
    void respUpgrade(String seq, String imei, RemoteUpgradeConfirmation confirmation);
}
